package com.example.mydemoproject.model;


import lombok.Data;
import lombok.extern.slf4j.Slf4j;
import org.springframework.boot.context.properties.ConfigurationProperties;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.List;

@Data
@Slf4j
//@Configuration
//@PropertySource("classpath:config.properties")
@ConfigurationProperties(prefix = "transfer.config",ignoreUnknownFields = false)
public class TransferConfiguration implements Serializable {



    /**
     * 是否首次上传 yes 是 no 否
     */
    @NotBlank
    private String firstUpload;

    /**
     * 是否字段匹配（MongoDB-Es） yes 是 no 否
     */
    @NotBlank
    private String nodeCompare;

    /**
     * db连接地址
     */
    @NotBlank
    private String dbLink;

    /**
     * db库的数组
     */
    @NotBlank
    private List<String> dbCollection;

    /**
     * 层级
     */
    @NotBlank
    private Integer level;

    /**
     * 瓦片展示类型
     */
    @NotBlank
    private String projection;

    /**
     * 时间标志
     */
    @NotBlank
    private String timeSymbol;

    /**
     * 左下角经度
     */
    @NotBlank
    private Double leftBottomLatitude;

    /**
     * 左下角经度
     */
    @NotBlank
    private Double leftBottomLongitude;

    /**
     * 左下角经度
     */
    @NotBlank
    private Double rightUpLatitude;

    /**
     * 左下角经度
     */
    @NotBlank
    private Double rightUpLongitude;

    /**
     * 工具操作类型
     */
    @NotNull
    private TransferOperation transferOperation;

//    public TransferConfiguration() {
//        log.info("---------实例化-----------");
//    }
}

